Can you try building a kernel with the following line in drivers/usb/storage/uas.c :
.can_queue = 65536, /* Is there a limit on the _host_ ? */
(around line 815) Replaced with
.can_queue = MAX_CMNDS,
That should help as MAX_CMNDS is 256, so claiming that we can queue more
is not helpful, and that likely is what is causing this quite high order alloc.
Reported-and-tested-by: Yves-Alexis Perez <corsac@corsac.net>
Gbp-Pq: Topic bugfix/all
Gbp-Pq: Name uas-fix-high-order-alloc.patch
.slave_configure = uas_slave_configure,
.eh_abort_handler = uas_eh_abort_handler,
.eh_bus_reset_handler = uas_eh_bus_reset_handler,
- .can_queue = 65536, /* Is there a limit on the _host_ ? */
+ .can_queue = MAX_CMNDS, /* Is there a limit on the _host_ ? */
.this_id = -1,
.sg_tablesize = SG_NONE,
.skip_settle_delay = 1,